package agentInterface;

import java.io.Serializable;

import model.Position;
import model.Product;
import agents.AgvAgent;
import agents.PowerAgent;

public class AGVDetails implements Serializable {
	private static final long serialVersionUID = 1882462288959395405L;
	
	private String name;
	private Position position;
	private Product product;
	private float currentLoad;
	private float maximumLoad;
	private int currentBattery;
	private int maximumBattery;
	
	public AGVDetails(AgvAgent agv) {
		this.name = agv.getLocalName();
		this.position = agv.getPosition();
		this.product = agv.getCurrentProduct();
		this.currentLoad = agv.getCurrentLoad();
		this.maximumLoad = agv.getMaximumLoad();
		this.currentBattery = (int)agv.getCurrentBattery();
		this.maximumBattery = (int)agv.getMaximumBattery();
	}

	public AGVDetails(PowerAgent pwr) {
		this.name = pwr.getLocalName();
		this.position = pwr.getPosition();
	}

	public String getName() {
		return name;
	}
	public Position getPosition() {
		return position;
	}
	public Product getProduct() {
		return product;
	}
	public float getCurrentLoad() {
		return currentLoad;
	}
	public float getMaximumLoad() {
		return maximumLoad;
	}
	public float getCurrentBattery() {
		return currentBattery;
	}
	public float getMaximumBattery() {
		return maximumBattery;
	}
}
